home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / WORDMISC / KDGRAF.LZH / KDGRAF.DOC < prev    next >
Text File  |  1989-12-04  |  24KB  |  446 lines

  1.  
  2.  
  3.                                   KDGraf
  4.                          Version 3.2  -  November 1989
  5.                    A Product of KD Ranch Enterprises (c)
  6.  
  7.  
  8. GENERAL:
  9.  
  10.     KDGraf is a pull-down, menu-driven graphics package for EGA/VGA users.
  11.     It will not display graphics on a CGA system.  Bars, 3D Bars, Lines,
  12.     3D Lines and Pies are supported.  Graphs can be saved and retrieved.
  13.     A maximum of 6 sets of values can be displayed over 60 occurrences -- i.e.,
  14.     up to 360 values can be shown. They can be printed on most Epson compatible
  15.     printers (FX-80 and above) HP Laser Jets and compatibles (maybe) and  
  16.     CalComp ColorMaster and PlotMaster thermal transfer printer/plotters. [Be
  17.     aware, that the CalComp stuff will be in color, but it could take as long as
  18.     20 minutes to produce the hardcopy.] 
  19.  
  20.     You will need appx. 256K available to run the program.
  21.     KDGraf was written in Turbo Pascal 5.0.
  22.  
  23.     If the compressed file is intact, the following should be included:
  24.    
  25.        KDGraf.exe       - the program itself.
  26.        KDGraf.doc        - this documentation file.
  27.        and 14 .KDG files - example grafs.
  28.  
  29.  
  30. HISTORY:
  31.  
  32.     Version 1.0  - Beta Only (April 1988).
  33.     Version 1.1  - Initial Release (June 1988).
  34.     Version 1.2  - Minor Bug Fixes (Sept.1988).
  35.     Version 1.3  - Added Scaling Enhancements (May 1989).
  36.     Version 1.4  - Added HP Laser Jet output.
  37.     Version 1.5  - Revised print process windows.
  38.     Version 2.0  - Increased occurrences from 15 to 60. [See note below!]
  39.     Version 2.1  - Implemented full-screen input mode and a few other things.
  40.     Version 3.0  - Minor bug fixes.
  41.     Version 3.2  - Added CalComp ColorMaster/PlotMaster Output drivers.
  42.  
  43.  
  44.  
  45. ******************  IMPORTANT NOTE TO USERS OF VERSION(S) 1.x  ****************
  46.  
  47.     Due to the increase of the allowable occurences from 15 to 60, the
  48.     entire internal data structure of KDGraf had to be revised.  As such,
  49.     saved grafs (.KDG's) from versions prior to 2.0 cannot be retrieved
  50.     properly by this version.  I have not include a conversion program for
  51.     two reasons: 1). Data entered was usually not that extensive.
  52.                  2). I have absolutely no idea how to write one.
  53.  
  54. *******************************************************************************
  55.  
  56.  
  57.  
  58. COMMAND SYNTAX: KDGraf [grafname]
  59.  
  60.     The only parameter supported by KDGraf is the name of an existing graph.
  61.     All graphs are saved with the extension .KDG.  Do not use the extension
  62.     when calling a graph with the command parameter.  The called graph will be
  63.     loaded at startup.  The parameter is not required.  Any existing graph in
  64.     the current directory can be called from within the program.
  65.  
  66. USAGE:
  67.  
  68.     Upon execution, a pull-down menu system will be displayed.
  69.     The idea here is to use the menus to select the type of graph,
  70.     input the data, make whatever cosmetic adjustments you might be
  71.     interested in, and then display and/or print your graph.
  72.  
  73.     Hopefully, to create a reasonably useful and attractive graph,
  74.     this should be pretty simple. If not, the author (me) has failed
  75.     in one of the primary goals.  There are, however, some intricacies
  76.     that may take further explanation -- that's why we have a .DOC file.
  77.  
  78.     I do not plan to describe everything possible in this .DOC file.
  79.     Most functions will be obvious.  The following information will
  80.     concentrate on those that aren't.
  81.  
  82.     Additionally, if the package you have received is intact, there should
  83.     be 14 example graphs to help you with most of the functions.  All data
  84.     and settings used to create these graphs are always included in the
  85.     saved graph file and are available from the menu system.
  86.  
  87. FUNCTIONS:
  88.  
  89.     The Pull-Down Menu System:
  90.        These menus operate like most other pull-down systems.  Generally,
  91.        you hilite your selection with the arrow keys and then press ENTER,
  92.        or simply select the item you want by pressing the first character
  93.        (KeyLetter) of any item within the current selection menu.
  94.  
  95.        A selection from a menu could do a lot of different things:
  96.          - just pull-down another selection menu.
  97.          - set an item as data that affects the graph.
  98.          - open a data input area asking for you to input some data.
  99.          - open a special sub-process for various reasons.
  100.          - actually execute something.
  101.  
  102.        What each menu does will become evident rather quickly.  The "Help"
  103.        function is designed to let you know what might happen to you before
  104.        it happens in addition to providing a hint or two about input data.
  105.  
  106.        There are a few special keys that may be of use:
  107.          F1 - is usually a "HELP" key and will provide a little information
  108.               about where you currently are and what you will get next.
  109.          F2 - is the pull/pop key.  If a menu is currently displayed, F2 will
  110.               pop you all the way back to ground zero (Data Display). If
  111.               you are at ground zero, it will pull back all the menus that
  112.               were last activated.  Data Display can be scrolled for viewing.
  113.          F3 - Activates full-screen input mode -- allows input for data,
  114.               names and labels only.  F3 is only active from ground zero.
  115.               This is simply an alternate method to enter chart data.  It
  116.               can also be entered via the pull-down menus as explained later.
  117.               This is the easiest way to enter a lot of data -- try it!
  118.           / - takes you to the Main (Top) Menu from almost everywhere.  This is
  119.               a very valuable key.   For example, the keys "/VG" will show
  120.               your graph as long as you are not currently in a process that
  121.               requires Esc to leave.
  122.         Esc - moves you back one level in the menu process or takes you out of
  123.               sub-processes. Sometimes, this is the only avenue of escape.
  124.  
  125.  
  126.    Message Line:
  127.  
  128.        The last line of the screen, The Message Line, will always show which
  129.        keys are active and what they do.  Once you play with the menus a
  130.        while, you should have little problem.
  131.  
  132.  
  133.     Menu Detail (based on Main Menu options):
  134.  
  135.     *** Many of the options listed below have some common selection criteria.
  136.         Most of these are listed under APPENDIX I. ***
  137.  
  138.        ChartType:
  139.          Allows you to select one of 13 types.  I am not going to list them
  140.          here.  When you change a choice here, you are automatically thrown to
  141.          the View Graph selection.  It may seem a little strange at first, but
  142.          I believe you will find it useful.
  143.  
  144.        Data:
  145.          Data comes in two varieties - Values and Names.  You will find that a
  146.          graph is constructed by use of a matrix with the "names" of a set
  147.          of "values" listed down the side and "labels" listed along the top.
  148.          This is where you enter all that stuff.  You will also be allowed to
  149.          give specific color and pattern information to each set of values and
  150.          names from here.  Specific details about what impact the data values,
  151.          names, colors and patterns may have are covered as we go on.
  152.  
  153.        Titles:
  154.          Three titles can be entered which will automatically be centered on
  155.          the top of the graph. From here you also enter the X and Y axis titles
  156.          which will be placed appropriately.  You can vary the Font, Color, and
  157.          Size of any of these (See APPENDIX).
  158.  
  159.        Notes:
  160.          Up to 9 notes can be entered and placed on the graph anywhere you
  161.          want. Again, Font, Color and Size can be selected along with the
  162.          position.  The position is controlled by a set of X,Y coordinates.
  163.          You will probably have to play with the positioning a bit to get the
  164.          note exactly where you want it. For general information, the notes are
  165.          connected at the chosen X,Y coordinates at their left center.  X
  166.          coordinates range from 0 to 639, Y from 0 to 349.
  167.  
  168.          A free-form line drawing capability can be accessed via "Notes".
  169.          "Lines" require FromX, FromY, ToX and ToY coordinates.  The note
  170.          color and size also affect the lines (size "3" gives a thick line).
  171.          "Lines"are independent of note text, except where they share color
  172.          and/or size.
  173.  
  174.        Enhancements:
  175.          This is the most complicated, least necessary, most used and hardest
  176.          to explain section of the whole package.This is where most of the
  177.          cosmetic changes are made to the graphs.  It is also the only menu
  178.          that varies with a ChartType selection (a Pie requires different stuff
  179.          than the other 12 types do).  Here goes:
  180.  
  181.             BackGround - Select a background color. 0 (black) is the default.
  182.                          Any other color selected causes that color's number to
  183.                          mean black.  That way, you don't lose a color and all
  184.                          that you had set up will still show when you switch.
  185.                          Think about it -- it makes sense (I think).
  186.             Outline   -  Tell whether you want an outline around the whole graph
  187.                          or not. You also have your basic Color, Thickness and
  188.                          Style choices. The default is ON and color 15.
  189.  
  190.  
  191.             **** For Bars and Lines -- Pie information to follow ****
  192.  
  193.             X axis line,
  194.             Y axis line,
  195.             Vert Grid,
  196.             Hor Grid   - Tell whether you want them and select Color, etc.  The
  197.                          axis defaults are ON and 15.  The grids default to OFF.
  198.             Annotation - Tell if you want the values and/or labels to be shown
  199.                          and where (most of the time).  The choices are "DO NOT
  200.                          DISPLAY", "INTERNAL", "EXTERNAL" and "BOTH" (internal
  201.                          and external). You will have to play with this some to
  202.                          get it where you like it.  It would take the rest of
  203.                          this file to try to explain all the possibilities and
  204.                          the effect that each has on the various graphs.
  205.             Chart Limits-Assign Low, High and Step Size values for the graph and
  206.                          set "ROOM" variables for top,bottom,left and right.
  207.                          Room means just what it implies - how much room should
  208.                          be available on each of the perimeters.  The defaults:
  209.                          Top and Bottom - 45; Left and Right - 60.  These will
  210.                          handle a "normal" graph. If your numbers are unusually
  211.                          large, or you make big titles, etc., adjust the room
  212.                          to accommodate them.  Room is also used to squeeze,
  213.                          elongate and position graphs for different effects.
  214.  
  215.                          Also, in 3D mode, a platform depth can be assigned. The
  216.                          limits are 1 to 349.  This is used to help view the
  217.                          data at slightly different angles -- nothing too
  218.                          dramatic. All of these values, by default (indicated
  219.                          by 0), will scale automatically.
  220.  
  221.             **** For Pies  [Ok - here's where it gets tough!]  ****
  222.  
  223.             Values Attribute,
  224.             Percent Attribute,
  225.             Labels Attribute   -  For each of these, select whether you want
  226.                                   them or not, Color, Size and Font.  Their
  227.                                   placement is controlled by ANNOTATION (below).
  228.                                   A "bogus" color is allowed to force the color
  229.                                   of these items to match the color of their
  230.                                   respective pie slice. That color is 16 (15 is
  231.                                   normally the limit). The normal defaults are
  232.                                   color-15, Size-0, Font-0 (0 = default) and ON.
  233.             InBox Attribute    -  If you have chosen "INTERNAL" for any of the
  234.                                   above items, they can be surrounded by a box.
  235.                                   Select the attributes for that box here.
  236.                                   A SPECIAL NOTE: The normal style for the InBox
  237.                                   is 0 which means "hollow" and therefore just
  238.                                   lets the background color show through. To
  239.                                   change the color, a style other than 0 must be
  240.                                   selected.  The default is ON and "hollow".
  241.             Annotation          - Similar to annotation from BARS except there
  242.                                   are two more items - PERCENT and NAMES. If you
  243.                                   choose to have the NAMES external you will
  244.                                   also have to indicate side or bottom.  Again,
  245.                                   this is best to play with instead of trying to
  246.                                   explain the possibilities.
  247.             Size                - This is a relative pie size indicator.
  248.                                   Basically, it is expressed as a percentage of
  249.                                   the "normal" full screen pie.  The default is
  250.                                   100, but if you don't want room for titles and
  251.                                   stuff, you can go larger.  Size becomes very
  252.                                   important if you plan to display more than 1
  253.                                   pie.  Again, play with it.
  254.             Relationship        - This is a Yes/No question.  It is primarily
  255.                                   designed to show multiple pies in sizes that
  256.                                   are relative to each other as opposed to
  257.                                   showing them all the same size even though
  258.                                   the total value of each pie is different. The
  259.                                   default is NO. EXTRA: If relationship is YES,
  260.                                   and the pie label is on, the total value of
  261.                                   each pie is shown as part of the label even
  262.                                   if there is only one pie.
  263.             Centers             - Allows placement of any of the 6 possible pies
  264.                                   using X,Y coordinates.  The X,Y coordinate is
  265.                                   where the center of the pie will be drawn.
  266.                                   Coordinates are the same as NOTES.  Placing
  267.                                   pies becomes very important when using the
  268.                                   RELATIONSHIP option.  You'll see.
  269.  
  270.        View:
  271.          This is the place you go to show your graph.
  272.  
  273.            Select the "Graph" option to display it.  After you see the graph,
  274.            any key will return to the menu system.
  275.  
  276.            Select "Print" to (you guessed it) print the graph. You will be
  277.            given the choices of a portrait or landscape output, output ports 
  278.            and printer selections. Assuming you have the correct printer and it
  279.            is ready, you will then have the option to set the graph's position
  280.            on the output. The graph will be displayed (that's how I get my hands
  281.            on the data to print -- directly from the screen) and the printing
  282.            will start after you hit ENTER.  Return is automatic as soon as all
  283.            the necessary data is in the print buffer.
  284.  
  285.            The other option, "Data", is simply a listing of what your data
  286.            currently looks like from a save file standpoint.  It was used as a
  287.            debug tool for me, but I kind of liked it, so I left it in. With some
  288.            thought, you may find some value in it too.  WARNING: The data listed
  289.            is not being extracted from a saved file. It is a listing of the data
  290.            that is currently active in the menu system.  If you want to keep it,
  291.            you must use the SAVE function.  APPENDIX II list the line numbers
  292.            and what they mean.
  293.  
  294.        Files:
  295.          To retrieve a saved graph, you have two options.  If you select "Get",
  296.          a new window is displayed allowing you to enter the saved graf name.
  297.          You can also select "Directory" which will show you a list of all the
  298.          graphs saved in the current directory and allow you to hilite the one
  299.          that you want.  Press ENTER and the hilited file will automatically
  300.          go through the "Get" routine.  The "Directory" function also allows
  301.          you to sort or delete files.
  302.  
  303.          "Save" is pretty straightforward.  A new window will ask for a name
  304.          and go through a normal save type routine (check for duplicates,etc.).
  305.          If you want to save with the current file name (lower right corner of
  306.          Data Screen), leave the field blank and just press ENTER.
  307.          The save files are pure ascii.  APPENDIX II lists the line numbers and
  308.          what they mean.
  309.  
  310.          "Reset" does just that -- resets all the values and selections to
  311.          their original defaults.  Be careful, if you haven't saved your
  312.          current work, it will be gone.
  313.  
  314.          The initial screen starts in the "FILES" menu.  From here, you can
  315.          access any of the saved files.  It seemed like a better place to
  316.          start than the actual beginning.  The actual beginning has no menu
  317.          items hilited or any menus pulled for your use (ground zero).  You
  318.          can get to that point by simply pressing F2.
  319.  
  320.        Quit:
  321.          You get two chances.  The trailing menu requires another "Quit" to
  322.          actually exit.  "Stay" does nothing but stay.
  323.  
  324.  
  325. APPENDIX I:
  326.  
  327.        Most of the values allowed below are indigenous to Turbo Pascal 5.0.
  328.  
  329.        Colors: 0 - black                     Fonts: 0 - default (character)
  330.                1 - blue                             1 - triplex
  331.                2 - green                            2 - small
  332.                3 - cyan                             3 - sans serif
  333.                4 - red                              4 - gothic
  334.                5 - magenta                          5 - script
  335.                6 - brown                            6 - block
  336.                7 - gray (dull white)      Patterns: 0 - empty (hollow)
  337.                8 - dark gray                        1 - solid
  338.                9 - light blue                       2 - lines
  339.               10 - light green                      3 - light slashes
  340.               11 - light cyan                       4 - slashes
  341.               12 - light red                        5 - back slashes
  342.               13 - light magenta                    6 - light back slashes
  343.               14 - light brown (orange ?)           7 - hatches
  344.               15 - white (bright)                   8 - cross hatches
  345.               16 - match to slices/bars only        9 - interleave
  346.                                                    10 - wide dots
  347.        Styles: 0 - solid                           11 - close dots
  348.                1 - dotted
  349.                2 - center dotted         Thickness: 1 - normal
  350.                3 - dashed                           2 - thick
  351.                4 - dash/dot      *                  3 - thick [note lines only]
  352.                5 - dash/dash/dot *           Sizes: 0 - 4 (0 is default)
  353.                6 - dash/dot/dot  *
  354.                    * used for line on line graph only.
  355.  
  356. APPENDIX II:
  357.  
  358.   The following are the line numbers used in the save files:
  359.  
  360.   1.. 60            Name Font
  361.  61..120            Name Size
  362. 121..123            Title Font
  363. 124..125            X,Y Axis Font
  364. 126..134            Note 1-9 Font
  365. 135..138            Annotation (Values,Names,PerCent,Labels)
  366. 139..140            Relativeness*,Side or Bottom*
  367. 141..143            Title Size
  368. 144..145            X,Y Axis Size
  369. 146..154            Note 1-9 Size
  370. 155..157            Outline (Exist,Font/Thk,Size/Stl)
  371. 158..160            X Axis  (Exist,Font/Thk,Size/Stl) [Value*]
  372. 161..163            Y Axis  (Exist,Font/Thk,Size/Stl) [PerCent*]
  373. 164..166            H Grid  (Exist,Font/Thk,Size/Stl) [Label*]
  374. 167..169            V Grid  (Exist,Font/Thk,Size/Stl) [InBox*]
  375. 170                 ChartType
  376. 171..230            Fill Color
  377. 231..290            Fill Pattern
  378. 291..350            Name Color
  379. 351..353            Title Color
  380. 354..355            X,Y Axis Color
  381. 356..364            Note 1-9 Color
  382. 365..369            Color  (out,x,y,h,v) or if pie*: (val,%,lab,inbox)
  383. 370                 Background Color
  384. 371..388            Notes(X,Y);
  385. 389..400            Pie Centers(X,Y)*;
  386. 401..404            Room (top,bottom,left,right)
  387. 405                 Platform Depth
  388. 406                 Reducer*
  389. 407..442            Lines[notes] (fromX,fromY,toX,toY)
  390. 443..502            Values - Set #1
  391. 503..562            Values - Set #2
  392. 563..622            Values - Set #3
  393. 623..682            Values - Set #4
  394. 683..742            Values - Set #5
  395. 743..802            Values - Set #6
  396. 803..862            Names
  397. 863..868            Labels
  398. 869..871            Chart Limits (step,low,high)
  399. 872..874            Title Text
  400. 875..876            X,Y Axis Text
  401. 877..885            Note 1-9 Text
  402.  
  403.   * if Pie
  404.  
  405.  
  406. REQUISITE DISCLAIMER and OTHER STUFF:
  407.  
  408.        I am not a programmer by profession and not a very good one by 
  409.        avocation.  As such, KDGraf is an extremely ambitious venture into 
  410.        programming for me. It is very large and terribly complicated.  
  411.        You have your hands on version 2.1 (the second release). I would
  412.        suspect that there are still some bugs and many things that could be
  413.        done differently and/or improved.
  414.  
  415.        It was written to try to learn a little something about how two
  416.        things work -- pull-down menus and graphics.  Both of these are
  417.        tough nuts to crack.  The pull-down menus were designed as a
  418.        composite of many of the systems that I have worked with or seen --
  419.        primarily Turbo Pascal itself, Windows and a program that credited the
  420.        included menu system to something called "PULL11".  The graphics part
  421.        is pure Turbo.
  422.  
  423.        So, the following is extra true about KDGraf:
  424.  
  425.        Every reasonable attempt has been made to offer a fun product that
  426.        may be of some use and be "bug" free.  I (the author) can, however,
  427.        offer no guarantees as to the suitability or use of this program.
  428.        Therefore (here we go)...
  429.  
  430.                THIS PRODUCT IS PROVIDED "AS IS" AND
  431.                WITHOUT WARRANTIES EXPRESS OR IMPLIED.
  432.                THE USER ASSUMES ALL RISK ASSOCIATED
  433.                WITH THE USE OF THIS PROGRAM.
  434.  
  435.        You may copy and distribute this program freely.  Please don't
  436.        charge for it and please provide this .DOC file and the example
  437.        grafs with it.
  438.  
  439.        Anyone who is interested, can send the author (me) $5 or so just for
  440.        the of it. (Mainly, I'm curious to see if anyone is interested!)
  441.  
  442.                                                 David A. Befort
  443.                                                 KD Ranch Enterprises (c)
  444.                                                 Rt.3, Box 8080
  445.                                                 Bartlesville, Ok. 74003
  446.